#ifndef _Base_H_
#define _Base_H_

class Base
{
	public:
		virtual double getArea() = 0;
};

class Circular : public Base
{
	private:
		double r;
	
	public:
		Circular(): r(0){}
		Circular(const double rr): r(rr){}
		virtual double getArea()
		{
			return r*r*3.14;
		}
};

class Column : public Circular
{
	private:
		double h;

	public:
		Column(): h(0){}
		Column(const double rr, const double hh): Circular(rr), h(hh){}

		virtual double getArea()
		{
			return Circular::getArea() * h;
		}
};

#endif
